﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Input;

namespace GeoStructor
{
    class EngineCommands
    {
        public static readonly RoutedUICommand Generate = new RoutedUICommand();
        public static readonly RoutedUICommand Delete = new RoutedUICommand("_Delete Selection", "Delete", typeof(EngineCommands),
            new InputGestureCollection() {
                new KeyGesture(Key.Delete)
            });
        public static readonly RoutedUICommand Clear = new RoutedUICommand("_Clear Selection", "Clear", typeof(EngineCommands),
            new InputGestureCollection()
                {
                    new KeyGesture(Key.E, ModifierKeys.Control)
                });
        public static readonly RoutedUICommand SaveGraph = new RoutedUICommand("_Save Graph", "SaveGraph", typeof(EngineCommands),
            new InputGestureCollection()
                {
                    new KeyGesture(Key.S, ModifierKeys.Control)
                });
        public static readonly RoutedUICommand LoadGraph = new RoutedUICommand("_Load Graph", "LoadGraph", typeof(EngineCommands),
            new InputGestureCollection()
                {
                    new KeyGesture(Key.L, ModifierKeys.Control)
                });
        public static readonly RoutedUICommand SaveHistory = new RoutedUICommand("S_ave History", "SaveHistory", typeof(EngineCommands),
            new InputGestureCollection()
                {
                    new KeyGesture(Key.S, ModifierKeys.Control | ModifierKeys.Shift)
                });
        public static readonly RoutedUICommand LoadHistory = new RoutedUICommand("L_oad History", "LoadHistory", typeof(EngineCommands),
            new InputGestureCollection()
                {
                    new KeyGesture(Key.L, ModifierKeys.Control | ModifierKeys.Shift)
                });
        public static readonly RoutedUICommand Undo = new RoutedUICommand("_Undo", "Undo", typeof(EngineCommands),
            new InputGestureCollection() {
                new KeyGesture(Key.Z, ModifierKeys.Control)
            });
        public static readonly RoutedUICommand Redo = new RoutedUICommand("_Redo", "Redo", typeof(EngineCommands),
            new InputGestureCollection() {
                new KeyGesture(Key.Y, ModifierKeys.Control)
            });
        public static readonly RoutedUICommand History = new RoutedUICommand();

    }
}
